Python中列表、元祖,字符串、字典,集合之间转换

您所在的位置:网站首页 字典转列表 python Python中列表、元祖,字符串、字典,集合之间转换

Python中列表、元祖,字符串、字典,集合之间转换

2024-01-21 20:55| 来源: 网络整理| 查看: 265

1.列表的转换

list——>str

要求list里面的元素是字符串,如果是整数,则不行

list1 = ['1','2','3','4','a'] ''.join(list1) ' '.join(list1) '!'.join(list1) list—–>tuple 对于列表内的元素没有特殊要求,迭代器,这两个之间可以互相转换 list1 = ['1','2','3','4','a',(1,2,3)] tuple(list1) list——>dict dict()里面要求的是映射关系,所以需要用zip把他们建立映射关系,再去转换 list1 = ['1','2','3','4','a',(1,2,3)] list2 = ['a','b','c','d','e','f'] dict1 = dict(zip(list1,list2))

运行结果:

{'1': 'a', '2': 'b', '3': 'c', '4': 'd', '5': 'e', (1, 2, 3): 'f'} list——->set 根据结合的要求,会把list中的相同元素去重。 list1 = ['1','2','3','3'] set(list1)

运行结果:

{'1', '2', '3'}

2.元祖的转换

tuple——->list 迭代器,这两个之间可以互相转换 tuple1 = (1,2,3,4,5,'2','a') list(tuple1)

运行结果:

[1, 2, 3, 4, 5, '2', 'a'] tuple——–>str

tuple和list函数要想转换成字符串,必须依靠 ’ ‘.join(tuple/list)来实现,要字符串型的要求

tuple1 = ('1','2','3','4','5','2','a') ''.join(tuple1) tuple——>dict 也是通过zip实现map映射的 tuple1 = ('1','2','3','4') tuple2= ('a',,'b','c','d') dict1 = dict(zip(tuple1,tuple2)) tuple——>set tuple1 = ('1','2','3','4') set(tuple1)

3.字符串的转换 - str——->list 字符串转换成list 的时候,str可以作为迭代对象,直接放入;也可以使用split对字符串进行切割。然后返回list中去。

s ='a1b1c1' list(s) s.split('1') ['a', '1', 'b', '1', 'c', '1'] ['a', 'b', 'c', ''] str——->tuple

这里面没有split这个函数,因为split后会形成list

s ='a1b1c1' tuple(s)

运行结果:

('a', '1', 'b', '1', 'c', '1') str——->dict 其核心还是利用map建立映射关系 s ='a1b1c1' b = '123456' dict(zip(s,b))

运行结果:

{'a': '1', '1': '6', 'b': '3', 'c': '5'} str——>set 还是注意set会去重,并且set里面是可迭代的对象即可 set('abca')

运行结果

{'a', 'b', 'c'}

4.字典的转换 - dict——->list/tuple/set 字典可以使用 dict.keys() 和dict.values()返回迭代器,通过list和tuple直接生成列表和元祖

dict1 = {1:'a',2:'b',3:'c'} list(dict1.keys()) list(dict1.values()) tuple(dict1.keys()) tuple(dict1.values()) set(dict1.keys()) set(dict1.values()) tuple(dict1.items()) #生成元祖为单位的元祖 list(dict1.items()) #生成元祖为单位的列表 set(dict1.items()) #生成元祖为单位的集合 dict——>str 对于生成字符串,需要先生成list和tuple,然后再由list和tuple生成str

5.集合的转换 - set——list/tuple

set1 = {1,2,3,4,5,6} list(set1) tuple(set1)

set——->str 个人认为这时候,会先变成list/tuple后,然后再变成str

set——->dict 虽然说可以实现,但是意义不太大,因为set是无序的。这种映射没有意义

dict(zip(set1,set2))

未完待续 。。。。。。。(稍后修改)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3